]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
workspace: Keep track of the dragging touch sequence
authorCarlos Garnacho <carlosg@gnome.org>
Fri, 16 Oct 2015 16:32:42 +0000 (18:32 +0200)
committerCarlos Garnacho <carlosg@gnome.org>
Fri, 4 Dec 2015 11:16:56 +0000 (12:16 +0100)
draggable.startDrag() is called directly here (i.e. manualMode is not set),
we must keep track of the touch event and pass it to startDrag() then.

https://bugzilla.gnome.org/show_bug.cgi?id=756748

js/ui/workspace.js

index 467f210f5b425f22a5bc3632f7d645406ebafc16..bacc75b6daa88b019e6eaa9022d82be4e76263eb 100644 (file)
@@ -361,6 +361,9 @@ const WindowClone = new Lang.Class({
         // a long-press canceled when the pointer movement
         // exceeds dnd-drag-threshold to manually start the drag
         if (state == Clutter.LongPressState.CANCEL) {
+            let event = Clutter.get_current_event();
+            this._dragTouchSequence = event.get_event_sequence();
+
             // A click cancels a long-press before any click handler is
             // run - make sure to not start a drag in that case
             Meta.later_add(Meta.LaterType.BEFORE_REDRAW, Lang.bind(this,
@@ -369,7 +372,7 @@ const WindowClone = new Lang.Class({
                         return;
                     let [x, y] = action.get_coords();
                     action.release();
-                    this._draggable.startDrag(x, y, global.get_current_time());
+                    this._draggable.startDrag(x, y, global.get_current_time(), this._dragTouchSequence);
                 }));
         }
         return true;